set(LLVM_LINK_COMPONENTS
  Support
  )

add_llvm_unittest(ADTTests
  AnyTest.cpp
  APFixedPointTest.cpp
  APFloatTest.cpp
  APIntTest.cpp
  APSIntTest.cpp
  ArrayRefTest.cpp
  BitFieldsTest.cpp
  BitmaskEnumTest.cpp
  BitVectorTest.cpp
  BreadthFirstIteratorTest.cpp
  BumpPtrListTest.cpp
  CoalescingBitVectorTest.cpp
  CombinationGeneratorTest.cpp
  DAGDeltaAlgorithmTest.cpp
  DeltaAlgorithmTest.cpp
  DenseMapTest.cpp
  DenseSetTest.cpp
  DepthFirstIteratorTest.cpp
  DirectedGraphTest.cpp
  EditDistanceTest.cpp
  EnumeratedArrayTest.cpp
  EquivalenceClassesTest.cpp
  FallibleIteratorTest.cpp
  FloatingPointMode.cpp
  FoldingSet.cpp
  FunctionExtrasTest.cpp
  FunctionRefTest.cpp
  HashingTest.cpp
  IListBaseTest.cpp
  IListIteratorTest.cpp
  IListNodeBaseTest.cpp
  IListNodeTest.cpp
  IListSentinelTest.cpp
  IListTest.cpp
  ImmutableListTest.cpp
  ImmutableMapTest.cpp
  ImmutableSetTest.cpp
  IntEqClassesTest.cpp
  IntervalMapTest.cpp
  IntrusiveRefCntPtrTest.cpp
  IteratorTest.cpp
  MappedIteratorTest.cpp
  MapVectorTest.cpp
  OptionalTest.cpp
  PackedVectorTest.cpp
  PointerEmbeddedIntTest.cpp
  PointerIntPairTest.cpp
  PointerSumTypeTest.cpp
  PointerUnionTest.cpp
  PostOrderIteratorTest.cpp
  PriorityWorklistTest.cpp
  RangeAdapterTest.cpp
  SCCIteratorTest.cpp
  STLExtrasTest.cpp
  STLForwardCompatTest.cpp
  ScopeExitTest.cpp
  SequenceTest.cpp
  SetVectorTest.cpp
  SimpleIListTest.cpp
  SmallPtrSetTest.cpp
  SmallSetTest.cpp
  SmallStringTest.cpp
  SmallVectorTest.cpp
  SparseBitVectorTest.cpp
  SparseMultiSetTest.cpp
  SparseSetTest.cpp
  StatisticTest.cpp
  StringExtrasTest.cpp
  StringMapTest.cpp
  StringRefTest.cpp
  StringSetTest.cpp
  StringSwitchTest.cpp
  TinyPtrVectorTest.cpp
  TripleTest.cpp
  TwineTest.cpp
  TypeSwitchTest.cpp
  TypeTraitsTest.cpp
  )

target_link_libraries(ADTTests PRIVATE LLVMTestingSupport)

add_dependencies(ADTTests intrinsics_gen)
